import axios from "axios";
import { Toast } from "antd-mobile";

// 2 你知道 axios 可以 create吗 创建多个  实例 

// 用到了 百度的接口  腾讯的接口

export const baseURL = process.env.REACT_APP_API ; 

export const request = axios.create({
  baseURL
});

// 同时发送n个请求出去 n个请求依次回来 的情形下  Toast 会被提前关闭  !!!

let ajaxTimes = 0;

// 添加请求拦截器
request.interceptors.request.use(function (config) {
  // 显示加载中 
  Toast.loading('加载中', 0);
  ajaxTimes++;
  return config;
}, function (error) {
  // 对请求错误做些什么
  return Promise.reject(error);
});

// 添加响应拦截器
request.interceptors.response.use(function (response) {
  // 对响应数据做点什么
  ajaxTimes--;
  ajaxTimes === 0 && Toast.hide();  

  return response.data;

}, function (error) {
  // 对响应错误做点什么
  return Promise.reject(error);
});